Contemporary data processing systems often produce or operate on large amounts of data—commonly on the order of gigabytes or terabytes in enterprise systems. Since the data may be critical to the operation of a business or other enterprise, many techniques have been developed to prevent data loss or impaired access. One basic approach is to copy all of the data to a secondary storage medium such as magnetic tape or disks or optical disks. This backup strategy has many drawbacks: copying large amounts of data is time-consuming, and applications using the data may have to be disabled during the backup to avoid introducing data inconsistencies that would render the backup useless. Full backups may take hours or days to complete, and a similar amount of time to restore. Also, backups only preserve data stored at the point in time the backup is made. Changes introduced afterward are unprotected and may be lost until the next backup completes successfully.
Incremental backup strategies, which skip data that has not changed since a previous incremental or full backup, can reduce the amount of time and storage required for a backup, at a cost of increased complexity and recovery time. Nevertheless, even incremental backups cannot provide protection for new data and data modifications that appear between backups. To reduce the amount of data “at risk,” system designers are turning to data mirroring schemes. In a mirror, a complete copy of the data on a source volume is maintained on a destination volume. The destination storage is managed by an independent system, often located in a completely different physical data center. Mirror operations may be arranged so that the mirror is only a few minutes or even just a few seconds out-of-date, so only data created or changed during that short time span may be lost due to a catastrophic failure. Some mirrors operate synchronously: they are always up to date.
A naïve approach to mirroring would call for a duplicate mirror server to back up each main server, doubling the hardware cost of any system. Fortunately, the demands placed on a typical mirror destination server are much less severe than the demands on a mirror source server, so it is often possible for one mirror destination server to maintain backup copies of many mirror source volumes. Source-to-destination ratios of 3:1 or 4:1 are usually possible, and in some environments with adequate network bandwidth and mass storage space, a mirror destination server may be able to maintain mirrors of dozens of source volumes.
As the source-to-destination ratio increases, certain administrative tasks at the mirror destination server may begin to tax the server's resources, limiting the number of additional source servers that can be backed up. Methods of reducing the impact of these administrative tasks can increase the sustainable source-to-destination ratio, thus lowering the number of backup servers required to protect a group of primary servers, and consequently reducing the overall system cost.